package com.duobaoyu.dby.supply.common.biz.remote.dto.refund;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.math.BigDecimal;

/**
 * @author liyang
 * @version 1.0.0
 * @ClassName AfterSaleWayBillDTO
 * @Description 填写运单号DTO
 * @createTime 18:00:00 2022/06/06
 */
@Data
public class AfterSaleWayBillDTO implements Serializable {

    private static final long serialVersionUID = -4520137758319081149L;

    /**
     * 售后单号
     */
    @NotBlank(message = "售后单号不能为空")
    private String afterSaleSn;

    /**
     * 发货日期，格式为yyyy-MM-dd HH:mm:ss
     */
    @NotBlank(message = "发货日期不能为空")
    @ApiModelProperty("发货日期，格式为yyyy-MM-dd HH:mm:ss")
    private String deliverDate;

    /**
     * sku编码
     */
    @NotBlank(message = "sku编码必填")
    private String skuCode;
    /**
     * 商品数量
     */
    @NotNull(message = "商品数量不能为空")
    @Min(value = 1, message = "商品数量有误")
    @ApiModelProperty("商品数量")
    private Integer productNum;
    /**
     * 货运单号，字段长度不超过50
     */
    @NotBlank(message = "货运单号不能为空")
    @ApiModelProperty("货运单号")
    private String expressCode;
    /**
     * 发货公司编码
     */
    @NotBlank(message = "发货公司编码不能为空")
    @ApiModelProperty("发货公司编码")
    private String expressCompanyCode;
    /**
     * 发货公司
     */
    @NotBlank(message = "发货公司不能为空")
    @ApiModelProperty("发货公司")
    private String expressCompany;
    /**
     * 运费
     */
    @NotNull(message = "运费不能为空")
    @ApiModelProperty("运费")
    private BigDecimal freightMoney;
}
